Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

G%areaT_global calculation with reproducing_sum() #467

Merged
merged 2 commits into from
Apr 13, 2017

Conversation

jkrasting
Copy link
Contributor

  • global area calculations were previously done
    with the non-reproducing sum_across_PEs().
  • Switched to using reproducing_sum()

  - global area calculations were previously done
    with the non-reproducing sum_across_PEs().
  - Switched to using reproducing_sum()
  - Removed addition of G%areaT_global, which was
    set to zero at the time of addition
  - Removed trailing blanks
@jkrasting
Copy link
Contributor Author

@Hallberg-NOAA - thank you for the review. Does commit bd47428 look better now?

@Hallberg-NOAA Hallberg-NOAA merged commit bd47428 into dev/master Apr 13, 2017
@adcroft adcroft deleted the user/jpk/area_repro_sum branch April 21, 2017 02:00
Hallberg-NOAA pushed a commit to Hallberg-NOAA/MOM6 that referenced this pull request Oct 7, 2023
Previously, ice-shelf Dirichlet boundary conditions only allowed u-velocity and v-velocity to be set to the same value (which is enforced by setting the value of parameters u_face_mask or v_face_mask to 3). This functionality is retained here, but now setting u_face_mask or v_face_mask to 5 enforces a Dirichlet boundary for u-velocity only along the respective cell face. Similarly, setting u_face_mask or v_face_mask to 6 enforces the Dirichlet boundary for v-velocity only along the respective cell face. This functionality is required for most ice-sheet modeling configurations, e.g. the idealized MISMIP+ configuration requires setting v-velocity only to 0 along its lateral boundaries, but with free-slip conditions enforced for u-velocity. Adding this capability required changes throughout the ice-shelf code.

Further changes were needed for how driving stress and Neummann conditions at computational boundaries are calculated in subroutine calc_shelf_driving_stress, and calls to subroutine apply_boundary_values were eliminated because they were not justified and caused errors. The new boundary treatment was tested by comparing simulated and analytical solutions for 1-D ice shelf flow with free-slip lateral boundary conditions and positive u_velocity enforced at the western boundary. This required the addition of a new parameter ADVECT_SHELF, which if false (as in the 1-D test case), turns off ice-shelf thickness evolution. By default, ADVECT_SHELF=True.

The new boundary treatment was also justified in 2-D by correctly simulating the expected MISMIP+ steady-state.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants